:host nav {
  background-color: #fafafa;
  margin-left: 200px;
  padding-bottom: 4px;
}

.navbar-custom .nav-item.active .nav-link,
.navbar-custom .nav-item:hover .nav-link {
  color: #71a7ff;
}

ul {
  list-style: none;
  font-family: 'Trebuchet MS';
  font-size: 17px;
  text-align: center;
}

li {
  position: relative;
  display: inline;
}

li a {
  text-decoration: none;
  color: #333;
  display: inline-block;
  padding: 10px;
}

li.nav-item.active span {
  display: block;
  width: calc(100% - 6px);
  height: 4px;
  background: #0088CC;
  position: absolute;
  left: 4px;
}

li a:hover {
  color: #0088CC;
}

li a:hover ~ span {
  animation: ul 0.3s ease-out;
  background: #333;
}

@keyframes ul {
  0% {
    width: 0;
  }
  100% {
    width: calc(100% - 6px);
  }
}
